1. Field of the Invention
The present invention relates generally to a computer implemented method, data processing system, and computer program product for testing adapters to data processing systems. More specifically, the present invention relates to protect a device driver state during diagnostic testing.
2. Description of the Related Art
Modern uses of computer systems are constructed from modular components that may be attached by slots or other connectors to a planar or motherboard. Accordingly, such systems accomplish a division of labor where core processes may be carried out by the planar and peripheral processes are carried out by devices or adapters that are modularly attached.
Some adapters can perform critical, though peripheral functions. For example, fiber optic interfaces can handle large volumes of traffic, which can be particularly beneficial to servers. Unfortunately, such mission critical adapters can interrupt business if unavailable for even a few seconds. Consequently, some users of these adapters may wish to minimize downtime that can occur when diagnosing perceived defects in adapter operation.
Unfortunately, vendor-provided diagnostic methods can include use of specialized user interfaces to cycle an adapter from an active and infuse state through various winding-down steps to a complete halt. Though helpful in diagnosing the adapter, such steps can use critical minutes of system time that otherwise would be spent serving customers. The problem is exacerbated by two additional phases of adapter outage—the diagnose phase, and the adapter enabling or reconfiguring phase. Rather than contend with minutes of downtime, a customer will mechanically remove the adapter and hot-plug a replacement adapter, returning the first adapter to the vendor.
Frequently such returned adapters are found to operate correctly and without any hardware fault. Instead, such adapters can be found to have a variety of other faults that may be correctable without downtime at the customer site. The costs of receiving a functional adapter incorrectly identified as faulty can be high.
Data processing system manufacturers build their product to be modular. That is, a data processing system has physical connectors, slots and other connecting points on a host device, A host device can be, for example, a planar, a bus, or any other system or subsystem of a data processing system. Because host devices may be manufactured by a number of vendors, and each may support a number of operating systems, a device driver is needed to account for idiosyncrasies of the host device, the adapter, or both.
Adapters can be in a number of states. One such state is “in-service,” where the adapter is configured to handle data exchanges between the host system and the adapter in support of an application. An application can be a database, a website server, a video game, among many others known in the art.
Thus, a need exists to provide detection of non-hardware faults in an adapter without risking substantial downtime while locating the fault.